import common from './common';
/*正则*/
export default {
    //是否数字
    isNum: function(str, name) {
        var res = this.isNull(str, name);
        if (!res) return false;
        var reg = /^[0-9]+([.][0-9]+){0,1}$/;
        if (!reg.test(str)) {
            common.showTip('请输入数字' + name, 'none');
            return false;
        }
        return true;

    },
    //不为空
    isNull: function(str, mas) {
        if (str == null || str.length == 0) {
            common.showTip(mas + "不能为空", 'none');
            return false;
        }
        return true;
    },
    // 中文
    isChinese: function(str, name, is) {
        var res = this.isNull(str, name);
        if (!res) return false;
        var reg = /^[\u0391-\uFFE5]+$/;
        if (!reg.test(str)) {
            common.showTip('请输入中文-' + name, 'none');
            return false;
        }
        return true;
    },
    // 字母
    isEn: function(str, name, is) {
        var res = this.isNull(str, name);
        if (!res) return false;
        var reg = /^[A-Za-z]+$/;
        if (!reg.test(str)) {
            common.showTip('请输入字母-' + name, 'none');
            return false;
        }
        return true;
    },
    //手机
    isTel: function(str) {
        var res = this.isNull(str, '手机号码');
        if (!res) return false;
        var reg = /^1[3456789][0-9]{9}$/;
        if (!reg.test(str)) {
            common.showTip('手机号码格式错误', 'none');
            return false;
        }
        return true;
    },
    //邮箱
    isEmail: function(str) {
        var res = this.isNull(str, '邮箱');
        if (!res) return false;
        var reg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
        if (!reg.test(str)) {
            common.showTip('邮箱格式错误', 'none', );
            return false;
        }
        return true;

    },
    //身份证
    isIdCard: function(str) {
        var res = this.isNull(str, '身份证');
        if (!res) return false;
        var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
        if (!reg.test(str)) {
            common.showTip('身份证格式错误', 'none');
            return false;
        }
        return true;
    },
    //微信号
    isWxNum: function(str) {
        var res = this.isNull(str, '微信号');
        if (!res) return false;
        var reg = /^[a-zA-Z\d_]{5,}$/;
        if (!reg.test(str)) {
            common.showTip('微信号格式错误', 'none');
            return false;
        }
        return true;
    },
    //密码
    isPassWord(str) {

        var res = this.isNull(str, '密码');
        if (!res) return false;
        var reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,16}$/;
        if (!reg.test(str)) {
            common.showTip('密码必须由6-16位数字加字母组成', 'none');
            return false;
        }
        return true;
    },
    //银行卡
    isBankCard(str) {
        var res = this.isNull(str, '银行卡');
        if (!res) {
            return false;
        }
        if (str.length < 16 || str.length > 19) {
            common.showTip('银行卡号长度必须在16到19之间', 'none');
            return false;
        }
        var num = /^\d*$/; //全数字
        if (!num.exec(str)) {
            common.showTip('银行卡号必须全为数字', 'none');
            return false;
        }
        //开头6位
        var strBin =
            "10,18,30,35,37,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,58,60,62,65,68,69,84,87,88,94,95,98,99";
        if (strBin.indexOf(str.substring(0, 2)) == -1) {
            common.showTip('银行卡号开头6位不符合规范', 'none');
            return false;
        }

        //'/^([1-9]{1})(\d{15}|\d{18})$/'
        return true;
    }
}
